Telegram Group & Telegram Channel
🔬 GoogleTest — полнофункциональный фреймворк для тестирования C++ кода от Google

GoogleTest (GTest) — это мощный и гибкий фреймворк для модульного тестирования C++ кода, разработанный Google. Он предоставляет богатый набор утверждений, фикстур, моков и других инструментов, которые помогают писать эффективные и поддерживаемые тесты для сложных проектов.

✏️ Установка:

# Через vcpkg
vcpkg install gtest

# Через conan
conan install gtest/1.16.0

# Сборка из исходников
git clone https://github.com/google/googletest.git
cd googletest
mkdir build && cd build
cmake ..
cmake --build .


☀️ Примеры использования:

// Базовый тест
#include <gtest/gtest.h>

TEST(StringTest, StringEquality) {
std::string actual = "Hello";
actual += " World";
EXPECT_EQ(actual, "Hello World");
}

int main(int argc, char **argv) {
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}


🍪 Дополнительные возможности:

— Фикстуры для повторного использования настроек теста
— GoogleMock для создания моков и стабов
— Параметризованные тесты
— Расширенные отчеты о результатах тестирования

⬆️ Параметризованные тесты:

class MathTest : public ::testing::TestWithParam<std::tuple<int, int, int>> {};

TEST_P(MathTest, Addition) {
int a = std::get<0>(GetParam());
int b = std::get<1>(GetParam());
int expected = std::get<2>(GetParam());
EXPECT_EQ(a + b, expected);
}

INSTANTIATE_TEST_SUITE_P(
AdditionTests,
MathTest,
::testing::Values(
std::make_tuple(1, 1, 2),
std::make_tuple(5, 3, 8),
std::make_tuple(-1, 1, 0)
)
);


🍴Ссылочки:

👉
GitHub

Библиотека C/C++ разработчика
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/cppproglib/5710
Create:
Last Update:

🔬 GoogleTest — полнофункциональный фреймворк для тестирования C++ кода от Google

GoogleTest (GTest) — это мощный и гибкий фреймворк для модульного тестирования C++ кода, разработанный Google. Он предоставляет богатый набор утверждений, фикстур, моков и других инструментов, которые помогают писать эффективные и поддерживаемые тесты для сложных проектов.

✏️ Установка:

# Через vcpkg
vcpkg install gtest

# Через conan
conan install gtest/1.16.0

# Сборка из исходников
git clone https://github.com/google/googletest.git
cd googletest
mkdir build && cd build
cmake ..
cmake --build .


☀️ Примеры использования:

// Базовый тест
#include <gtest/gtest.h>

TEST(StringTest, StringEquality) {
std::string actual = "Hello";
actual += " World";
EXPECT_EQ(actual, "Hello World");
}

int main(int argc, char **argv) {
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}


🍪 Дополнительные возможности:

— Фикстуры для повторного использования настроек теста
— GoogleMock для создания моков и стабов
— Параметризованные тесты
— Расширенные отчеты о результатах тестирования

⬆️ Параметризованные тесты:

class MathTest : public ::testing::TestWithParam<std::tuple<int, int, int>> {};

TEST_P(MathTest, Addition) {
int a = std::get<0>(GetParam());
int b = std::get<1>(GetParam());
int expected = std::get<2>(GetParam());
EXPECT_EQ(a + b, expected);
}

INSTANTIATE_TEST_SUITE_P(
AdditionTests,
MathTest,
::testing::Values(
std::make_tuple(1, 1, 2),
std::make_tuple(5, 3, 8),
std::make_tuple(-1, 1, 0)
)
);


🍴Ссылочки:

👉
GitHub

Библиотека C/C++ разработчика
#буст

BY Библиотека C/C++ разработчика | cpp, boost, qt


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/cppproglib/5710

View MORE
Open in Telegram


Библиотека C C разработчика | cpp boost qt Telegram | DID YOU KNOW?

Date: |

A project of our size needs at least a few hundred million dollars per year to keep going,” Mr. Durov wrote in his public channel on Telegram late last year. “While doing that, we will remain independent and stay true to our values, redefining how a tech company should operate.

What is Telegram Possible Future Strategies?

Cryptoassets enthusiasts use this application for their trade activities, and they may make donations for this cause.If somehow Telegram do run out of money to sustain themselves they will probably introduce some features that will not hinder the rudimentary principle of Telegram but provide users with enhanced and enriched experience. This could be similar to features where characters can be customized in a game which directly do not affect the in-game strategies but add to the experience.

Библиотека C C разработчика | cpp boost qt from pl


Telegram Библиотека C/C++ разработчика | cpp, boost, qt
FROM USA